package org.test.service;

import java.util.List;

import javax.annotation.Resource;

import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.test.dto.SearchFoodInfoRelDto;
import org.test.mapper.FoodInfoMapper;
import org.test.mapper.FoodInfoRelMapper;
import org.test.pojo.FoodInfo;

import com.github.pagehelper.PageHelper;

@Service
@Transactional(rollbackFor = Exception.class) // 只要报错就回滚

public class FoodInfoServiceImpl implements FoodInfoService {
	@Resource
	private FoodInfoMapper foodInfoMapper;
	@Resource
	private FoodInfoRelMapper foodInfoRelMapper;
	

	@Override
	public List<FoodInfo> selectByPage(SearchFoodInfoRelDto dto) {
		// 判断参数
        if (dto.getName() != null && dto.getName().trim().equals("")) {
            dto.setName(null);
        }
        if (dto.getPhone() != null && dto.getPhone().trim().equals("")) {
            dto.setPhone(null);
        }
        if (dto.getCardType() != null && dto.getCardType().trim().equals("")) {
            dto.setCardType(null);
        }
        if (dto.getTemperature() != null && dto.getTemperature().trim().equals("")) {
            dto.setTemperature(null);
        }
        if (dto.getStartCtime() != null && dto.getStartCtime().trim().equals("")) {
            dto.setStartCtime(null);
        }
        if (dto.getEndCtime() != null && dto.getEndCtime().trim().equals("")) {
            dto.setEndCtime(null);
        }
		// 分页
		PageHelper.offsetPage(dto.getOffset(), dto.getLimit());
		return foodInfoRelMapper.selectByPage(dto);
	}

	@Override
	public Long countFoodInfo(SearchFoodInfoRelDto dto) {
		// 判断参数
		if (dto.getName() != null && dto.getName().trim().equals("")) {
			dto.setName(null);
		}
        if (dto.getPhone() != null && dto.getPhone().trim().equals("")) {
            dto.setPhone(null);
        }
        if (dto.getCardType() != null && dto.getCardType().trim().equals("")) {
            dto.setCardType(null);
        }
        if (dto.getTemperature() != null && dto.getTemperature().trim().equals("")) {
            dto.setTemperature(null);
        }

		return foodInfoRelMapper.countFoodInfo(dto);
	}


	@Override
	public Integer insertFoodInfo(FoodInfo foodInfo) {

		return foodInfoMapper.insertFoodInfo(foodInfo);
	}

	@Override
	public Integer deleteFoodInfoById(Long id) {

		return foodInfoMapper.deleteFoodInfoById(id);
	}



}
